# info = "abcdefgh"
# info1 = "Hello World"
# print(len(info))
# print(len(info1))
# info2 = [11,"aa",1.88,(1,2,3),["aa","bb"]]
# print(len(info2))
# info3 = (11,"aa",1.88)
# print(len(info3))
# info4 = {"name": "tom","age":18,"gender":"男"}
# print(len(info4))

#函数的定义和调用
# phone_list = ['13880001111', '13999992222', '150999933331']
# password_list = ['123456', '456def', 'aaaaaa']
# # 定义空列表
# result = []
# # 1.遍历手机号
# for i in phone_list:
#     for j in password_list:
#         element = (i,j)
#         result.append(element)
# # 打印result
# print(result)
# print(len(result))

#for循环
# res1 = []
# for i in range(1,11):
#     res1.append(i**2)
# print(res1)

#列表推导式
# res2 = [i**2 for i in range(1,11)]
# print(res2)

# res3 = [i ** 2 for i in range(1, 11) if i % 2 == 0]
# print(res3)

#函数的参数
#定义字典(非空)元素的列表
login_data = [
    {"username": "13097920201", "password": "123456"}, # 正确的用户名和密码
    {"username": "", "password": "123456"}, # 空用户名，正确密码
    {"username": "13097920201", "password": ""}, # 正确用户名，空密码
    {"username": "13097920201", "password": "123"} # 正确用户名，错误密码（密码长度不足）
]
# 思路：数据和业务分离的思路
# 先实现业务功能（函数）
def login(phone, pwd):
    # 定义登录函数，接收两个参数：phone（手机号/用户名）和pwd（密码）
    if phone == "13097920201" and pwd == "123456":
        # 当手机号和密码都与预设的正确值匹配时，打印"登录成功"
        print("登录成功")
    else:
        # 当手机号或密码不匹配时，打印"登录失败"
        print("登录失败")

#再构造数据进行验证
# 定义函数
# def login(phone):
#
#     if phone == "13488888888":
#         return "账号正确" # 判断之后的结果返回给调用者
#     else:
#             return "账号错误"
# # 调用函数
# # 调用函数断言结果
# assert "账号错误" == login("13800000001") # 预期结果 == 实际结果
# assert "正确" in login("13488888888")

#案例2
# 1.定义函数
# def get_max(num1,num2):
#     # 有两个数字：直接通过参数传递
#     # 判断大小关系
#     if num1 > num2: # num1大于num2 返回num1
#         # 返回较大值
#         return num1
#     else: # num1小于等于num2 返回num2
#         return num2
#     # 2.调用函数
#     print(get_max(10,20))